﻿using System;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using Abp.AutoMapper;
using Abp.Runtime.Validation;
using Abp.Extensions;
using LeadThing.AbpZeroTemplate.WorkFlow_Processs;

namespace LeadThing.AbpZeroTemplate.WorkFlow_Processs.Dtos
{
    /// <summary>
    /// 流程节点配置表编辑用Dto
    /// </summary>
    [AutoMap(typeof(WorkFlow_Process))]
    public class WorkFlow_ProcessEditDto
    {

        /// <summary>
        ///   主键Id
        /// </summary>
        [DisplayName("主键Id")]
        public long? Id { get; set; }

        /// <summary>
        /// 流程ID
        /// </summary>
        [DisplayName("流程ID")]
        [Required]
        public int FlowID { get; set; }

        /// <summary>
        /// 步骤名称
        /// </summary>
        [DisplayName("步骤名称")]
        [Required]
        [MaxLength(50)]
        public string ProcessName { get; set; }

        /// <summary>
        /// 步骤类型is_one发起is_step正常步骤is_end办结
        /// </summary>
        [DisplayName("步骤类型is_one发起is_step正常步骤is_end办结")]
        [Required]
        [MaxLength(50)]
        public string ProcessType { get; set; }

        /// <summary>
        /// 转交下一步骤号
        /// </summary>
        [DisplayName("转交下一步骤号")]
        [Required]
        [MaxLength(50)]
        public string ProcessTo { get; set; }

        /// <summary>
        /// 经办人-存userid，逗号隔开
        /// </summary>
        [DisplayName("经办人-存userid，逗号隔开")]
        [MaxLength(1000)]
        public string RangeUsers { get; set; }

        /// <summary>
        /// 经办人-存username，逗号隔开
        /// </summary>
        [DisplayName("经办人-存username，逗号隔开")]
        [MaxLength(1000)]
        public string RangeNames { get; set; }

        /// <summary>
        /// 是否允许该主办人可办结0不可1可
        /// </summary>
        [DisplayName("是否允许该主办人可办结0不可1可")]
        public int IsUserEnd { get; set; }

        /// <summary>
        /// 排序
        /// </summary>
        [DisplayName("排序")]
        public int ProcessOrder { get; set; }

        /// <summary>
        /// 是否可用
        /// </summary>
        [DisplayName("是否可用")]
        public bool DelTag { get; set; }

        /// <summary>
        /// 表ID
        /// </summary>
        [DisplayName("表ID")]
        [Required]
        public int TableID { get; set; }

    }
}
